package com.hnust.root.dao.entity.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @Author zhusir
 * @Date 2019/2/10
 * @Desc 日志
 */
@Data
@TableName()
public class OperationLog extends Model<OperationLog> {
    private static final long serialVersionUID = 1L;

    @TableId
    private int id;

    /**
     * 模块名
     */
    @TableField("model_name")
    private String modelName;

    /**
     * 操作
     */
    @TableField("operation")
    private String operation;

    /**
     * 描述
     */
    @TableField("description")
    private String description;

    /**
     * 操作者ID
     */
    @TableField("user_id")
    private int userId;

    /**
     * 请求者IP
     */
    @TableField("ip")
    private String IP;

    /**
     * 类名
     */
    @TableField("class_name")
    private String className;

    /**
     * 方法名
     */
    @TableField("method_name")
    private String methodName;

    /**
     * 参数
     */
    @TableField("args")
    private String args;

    /**
     * 操作时间
     */
    @TableField("create_time")
    private LocalDateTime createTime;

    /**
     * 是否成功，0：成功，1：失败
     */
    @TableField("success")
    private int success;

    /**
     * 异常堆栈信息
     */
    @TableField("message")
    private String message;

    @TableField("response")
    private String response;

    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
